package tv.acgn.advertisement.publish.vo.adunit;

import java.math.BigDecimal;

import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.NotBlank;

import lombok.Builder;
import lombok.Data;
import tv.acgn.advertisement.publish.validator.group.GroupAdd;
import tv.acgn.advertisement.publish.validator.group.GroupUpdate;
import tv.acgn.advertisement.publish.validator.message.AdUnitValidateMessage;

/**
 * @author : junG
 * @program : advertisement-ad-pub-vo
 * @description : 推广单元请求对象类
 * @date : 2019-05-25 23:56
 **/

@Data
@Builder
public class AdUnitRequestVO {

    @NotBlank(message = AdUnitValidateMessage.UNIT_ID_NOT_BLANk, groups = {GroupUpdate.class})
    private String unitId;

    @NotBlank(message = AdUnitValidateMessage.PLAN_ID_NOT_BLANK)
    private String planId;

    @NotBlank(message = AdUnitValidateMessage.UNIT_NAME_NOT_BLANk, groups = {GroupAdd.class})
    private String unitName;

    @NotBlank(message = AdUnitValidateMessage.POSITION_TYPE_NOT_BLANK, groups = {GroupAdd.class})
    private Integer positionType;

    private Integer unitStatus;

    @NotBlank(message = AdUnitValidateMessage.BUDGET_NOT_BLANK, groups = {GroupAdd.class})
    @DecimalMin(value = "0")
    private BigDecimal budget;

}
